package com.smartcar.common.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Builder
public class User {
    // 主键自增 用户索引 id
    private Long id;
    // 用户编号
    private String number;
    // 用户账号
    private String username;
    // 用户密码
    private String password;
    // 用户昵称
    private String nickName;
    // 角色id
    private Integer roleId;
    // 账号状体（0正常，1停用）
    private Integer status;
    // 手机号码
    private String phone;
    // 账号注册时间
    private Date createTime;
    // 账号注册设备 ip
    private String createIp;
    //最后一次修改时间
    private Date updateTime;
    // 最后一次修改设备 ip
    private String updateIp;
    // 注册渠道（渠道为iOS、Android、wap、小程序等）
    private String userChannel;
    // 附件表
    private Integer userAnnexId;
    // 会员等级id
    private Integer userVip;
    // 最后一次登录时间
    private Date userLastTime;
    // 最后一次登录方式
    private String userLastLogin;
    // 最后一次下单时间
    private Date userBuyTime;
    // 所在城市
    private String cityName;
    // 用户生日
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;
    //信用积分
    private Integer creditScore;
    // 备注，提示信息，例（您因为信誉分低于xx分，暂停用账号无法登录，请等待信誉分自动增长或联系客服）
    private String remark;
    // 用户头像
    private String avatar;
    // 司机接单状态（0未接单，1接单）
    private Integer acceptStatus;
    // 司机车辆类型
    private Integer carType;
    // 司机车牌
    private String carNumber;

    // 角色名称
    private String roleName;


    private Integer pageNum = 1;
    private Integer pageSize = 10;

    private Integer reasonId;
    private String reasonName;

    private Date startTime;
    private String endTime;

    private BigDecimal driverLongitude;
    private BigDecimal driverLatitude;
    private String code;

    private String orderNumber;
}
